<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BLayout</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BLayout">
			<h1>BLayout</h1>
			<p>继承自<a href="BObject.html">BObject</a></p>
			<p id="resume">BLayout是最基础的布局器，用于管理控件的分布与排列。<a href="#desc">详细</a></p>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right"></td><td><a href="#BLayout(BWidget*)">BLayout</a>(BWidget* host = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#BLayout(BWidget*, PartFlag)">BLayout</a>(BWidget* host, PartFlag part);</td></tr>
				<tr><td align="right"></td><td><a href="#BLayout(const BString&,BWidget*)">BLayout</a>(const BString& name, BWidget* host = 0);</td></tr>
				<tr><td align="right"></td><td><a href="#BLayout(const BString&, BWidget*, PartFlag)">BLayout</a>(const BString& name, BWidget* host, PartFlag part);</td></tr>
				<tr><td align="right"></td><td><a href="#~BLayout()">~BLayout</a>();</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#setEnabled(bool)">setEnabled</a>(bool enabled) override;</td></tr>
				<tr><td align="right">void </td><td><a href="#fresh()">fresh</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#dirty()">dirty</a>();</td></tr>
				<tr><td align="right">BWidget* </td><td><a href="#host()">host</a>();</td></tr>
				<tr><td align="right">const BWidget* </td><td><a href="#host()">host</a>() const;</td></tr>
				<tr><td align="right">BLayout* </td><td><a href="#parent()">parent</a>();</td></tr>
				<tr><td align="right">const BLayout* </td><td><a href="#parent()">parent</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setPart(PartFlag)">setPart</a>(PartFlag part);</td></tr>
				<tr><td align="right">PartFlag </td><td><a href="#part()">part</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setVisible(bool)">setVisible</a>(bool visible);</td></tr>
				<tr><td align="right">bool </td><td><a href="#visible()">visible</a>() const;</td></tr>
				<tr><td align="right">BStyle* </td><td><a href="#style()">style</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMargin(int, int, int, int)">setMargin</a>(int left, int top, int right, int bottom);</td></tr>
				<tr><td align="right">void </td><td><a href="#setMargin(const BMargin&)">setMargin</a>(const BMargin& margin);</td></tr>
				<tr><td align="right">const BMargin& </td><td><a href="#margin()">margin</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMargin(Part, int)">setMargin</a>(Part part, int value);</td></tr>
				<tr><td align="right">int </td><td><a href="#margin(Part)">margin</a>(Part part) const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setWidthPolicy(Policy)">setWidthPolicy</a>(Policy widthPolicy);</td></tr>
				<tr><td align="right">Policy </td><td><a href="#widthPolicy()">widthPolicy</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setHeightPolicy(Policy)">setHeightPolicy</a>(Policy heightPolicy);</td></tr>
				<tr><td align="right">Policy </td><td><a href="#heightPolicy()">heightPolicy</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setSizePolicy(Policy, Policy)">setSizePolicy</a>(Policy widthPolicy, Policy heightPolicy);</td></tr>
				<tr><td align="right">void </td><td><a href="#setSizePolicy(const BSizePolicy&)">setSizePolicy</a>(const BSizePolicy& sizePolicy);</td></tr>
				<tr><td align="right">virtual BSizePolicy </td><td><a href="#sizePolicy()">sizePolicy</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setFixedSize(int, int)">setFixedSize</a>(int fixedWidth, int fixedHeight);</td></tr>
				<tr><td align="right">void </td><td><a href="#setFixedSize(const BSize&)">setFixedSize</a>(const BSize& fixedSize);</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#fixedSize()">fixedSize</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMinSize(int, int)">setMinSize</a>(int minWidth, int minHeight);</td></tr>
				<tr><td align="right">void </td><td><a href="#setMinSize(const BSize&)">setMinSize</a>(const BSize& minSize);</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#minSize()">minSize</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMinWidth(int)">setMinWidth</a>(int minWidth);</td></tr>
				<tr><td align="right">int </td><td><a href="#minWidth()">minWidth</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMinHeight(int)">setMinHeight</a>(int minHeight);</td></tr>
				<tr><td align="right">int </td><td><a href="#minHeight()">minHeight</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxSize(int, int)">setMaxSize</a>(int maxWidth, int maxHeight);</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxSize(const BSize&)">setMaxSize</a>(const BSize& maxSize);</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#maxSize()">maxSize</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxWidth(int)">setMaxWidth</a>(int maxWidth);</td></tr>
				<tr><td align="right">int </td><td><a href="#maxWidth()">maxWidth</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setMaxHeight(int)">setMaxHeight</a>(int maxHeight);</td></tr>
				<tr><td align="right">int </td><td><a href="#maxHeight()">maxHeight</a>() const;</td></tr>
				<tr><td align="right">BSize </td><td><a href="#preferSize()">preferSize</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setRect(int, int, int, int)">setRect</a>(int x, int y, int width, int height);</td></tr>
				<tr><td align="right">void </td><td><a href="#setRect(const BPoint&, const BSize&)">setRect</a>(const BPoint& pos, const BSize& size);</td></tr>
				<tr><td align="right">void </td><td><a href="#setRect(const BRect&)">setRect</a>(const BRect& rect);</td></tr>
				<tr><td align="right">const BRect& </td><td><a href="#rect()">rect</a>() const;</td></tr>
				<tr><td align="right">BRect </td><td><a href="#rect(Part)">rect</a>(Part part) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setAlign(Align)">setAlign</a>(Align align);</td></tr>
				<tr><td align="right">Align </td><td><a href="#align()">align</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#setWidget(BWidget*,Align)">setWidget</a>(BWidget* widget, Align align = Align_None);</td></tr>
				<tr><td align="right">const BWidget* </td><td><a href="#widget()">widget</a>() const;</td></tr>
				<tr><td align="right">BWidget* </td><td><a href="#widget()">widget</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#setLayout(BLayout*,Align)">setLayout</a>(BLayout* layout, Align align = Align_None);</td></tr>
				<tr><td align="right">const BLayout* </td><td><a href="#layout()">layout</a>() const;</td></tr>
				<tr><td align="right">BLayout* </td><td><a href="#layout()">layout</a>();</td></tr>
				<tr><td align="right">bool </td><td><a href="#setSpacer(BSpacer*,Align)">setSpacer</a>(BSpacer* spacer, Align align = Align_None);</td></tr>
				<tr><td align="right">const BSpacer* </td><td><a href="#spacer()">spacer</a>() const;</td></tr>
				<tr><td align="right">BSpacer* </td><td><a href="#spacer()">spacer</a>();</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#dirty(const BObject*)">dirty</a>(const BObject* object);</td></tr>
				<tr><td align="right">virtual Align </td><td><a href="#align(const BObject*)">align</a>(const BObject* object) const;</td></tr>
				<tr><td align="right">virtual const BRect& </td><td><a href="#area(const BObject*)">area</a>(const BObject* object) const;</td></tr>
				<tr><td align="right">virtual int </td><td><a href="#count()">count</a>() const;</td></tr>
				<tr><td align="right">virtual BObject* </td><td><a href="#object(int)">object</a>(int index) const;</td></tr>
				<tr><td align="right">virtual BWidget* </td><td><a href="#widget(int)">widget</a>(int index) const;</td></tr>
				<tr><td align="right">virtual BLayout* </td><td><a href="#layout(int)">layout</a>(int index) const;</td></tr>
				<tr><td align="right">virtual BSpacer* </td><td><a href="#spacer(int)">spacer</a>(int index) const;</td></tr>
				<tr><td align="right">virtual BSpring* </td><td><a href="#spring(int)">spring</a>(int index) const;</td></tr>
				<tr><td align="right">virtual BObject* </td><td><a href="#find(const BString&)">find</a>(const BString& name) const;</td></tr>
				<tr><td align="right">virtual BWidget* </td><td><a href="#findWidget(const BString&)">findWidget</a>(const BString& name) const;</td></tr>
				<tr><td align="right">virtual BLayout* </td><td><a href="#findLayout(const BString&)">findLayout</a>(const BString& name) const;</td></tr>
				<tr><td align="right">virtual BSpacer* </td><td><a href="#findSpacer(const BString&)">findSpacer</a>(const BString& name) const;</td></tr>
				<tr><td align="right">virtual BSpring* </td><td><a href="#findSpring(const BString&)">findSpring</a>(const BString& name) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#contain(const BObject*)">contain</a>(const BObject* object) const;</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#contain(const BWidget*)">contain</a>(const BWidget* widget) const;</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#contain(const BLayout*)">contain</a>(const BLayout* layout) const;</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#contain(const BSpacer*)">contain</a>(const BSpacer* spacer) const;</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#contain(const BSpring*)">contain</a>(const BSpring* spring) const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#remove(BObject*)">remove</a>(BObject* object);</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#remove(BWidget*)">remove</a>(BWidget* widget);</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#remove(BLayout*)">remove</a>(BLayout* layout);</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#remove(BSpacer*)">remove</a>(BSpacer* spacer);</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#remove(BSpring*)">remove</a>(BSpring* spring);</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#clear()">clear</a>();</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#baseSize()">baseSize</a>() const;</td></tr>
				<tr><td align="right">virtual BSize </td><td><a href="#sizeHint()">sizeHint</a>() const;</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#adjust()">adjust</a>();</td></tr>
			</table>
			<h2>protected</h2>
			<table id="protected">
				<tr><td align="right">virtual void </td><td><a href="#attached(BWidget*)">attached</a>(BWidget* host);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#detached(BWidget*)">detached</a>(BWidget* host);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#event(const BEvent&)">event</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#styleEvent(const BEvent&)">styleEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#freshEvent(const BEvent&)">freshEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#paintEvent(const BEvent&)">paintEvent</a>(const BEvent& event);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseEnterEvent(const BMouseEvent&)">mouseEnterEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseLeaveEvent(const BMouseEvent&)">mouseLeaveEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mousePressEvent(const BMouseEvent&)">mousePressEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseReleaseEvent(const BMouseEvent&)">mouseReleaseEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#mouseMoveEvent(const BMouseEvent&)">mouseMoveEvent</a>(const BMouseEvent& mouseEvent);</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2>
				<p>BLayout是最基础的布局器，用于管理控件的分布与排列。此控件只包含一个元素。</p><p>布局器只能依附于控件才能工作，控件有九个部位可以旋转布局器，且每个部分可以放置多个布局器。作为主控件，会在更新时对各个布局器赋予特定的矩形区域。布局器也可以不明确放置的部分，从面成为自由布局器。</p><p>当布局器状态为不启用时，所有的子控件都将为呈现不启用状态。</p><p>隐藏布局器，那么其所包含的所有控件将被隐藏。</p><p>宽度和高度的策略会影响父布局的布局行为，Policy_Preferred表示关心合适的大小，Policy_Fixed表示关心固定尺寸，Policy_Expanding表示可以扩张，Policy_Shrinking表示可以缩小。</p>
				<p>子类及其功能简述：</p><table>
					<tr><td>BHBoxLayout</td><td>横向布局器，使用子控件横向依次排列。</td></tr>
					<tr><td>BVBoxLayout</td><td>纵向布局器，使用子控件纵向依次排列。</td></tr>
					<tr><td>BGridLayout</td><td>网格布局器，使用子控件以表格的样式进行排列。</td></tr>
					<tr><td>BStackLayout</td><td>栈布局器，使用子控件层叠在一起，最多只显示其中的一个。</td></tr>
					<tr><td>BDockLayout</td><td>码头布局器，使用子控件分别停靠在指定的边缘地带。</td></tr></table><h4>信号表：</h4><table>
					<tr><td>Signal_Dirty</td><td>标记此布局器为需要重新调整时发出，无值。</td></tr>
					<tr><td>Signal_Show</td><td>此布局器被改变为显示状态时发出，值为：bool visible = true。</td></tr>
					<tr><td>Signal_Hide</td><td>此布局器被改变为隐藏状态时发出，值为：bool visibe = false。</td></tr>
					<tr><td>Signal_Moved</td><td>此布局器的位置被改变时发出，值为：BPoint pos。</td></tr>
					<tr><td>Signal_Resized</td><td>此布局器的尺寸被改变时发出，值为：BSize size。</td></tr>
					<tr><td>Signal_Attached</td><td>当此布局器依附于控件时发出，值为依附控件：BWidget* host。</td></tr>
					<tr><td>Signal_Detached</td><td>当此布局器脱离于控件时发出，值为脱离控件：BWidget* host。</td></tr></table>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="BLayout(BWidget*)">
				<h3>BLayout(BWidget* host = 0);</h3>
				<p>构造一个空的布局器，host指定其依附控件。</p>
			</div>
			<div id="BLayout(BWidget*, PartFlag)">
				<h3>BLayout(BWidget* host, PartFlag part);</h3>
				<p>构造一个空的布局器，host指定其依附控件， part指定此布局器放置的部位。</p>
			</div>
			<div id="BLayout(const BString&,BWidget*)">
				<h3>BLayout(const BString&amp; name, BWidget* host = 0);</h3>
				<p>构造一个空的布局器，name指定其名称。host指定依附控件。</p>
			</div>
			<div id="BLayout(const BString&, BWidget*, PartFlag)">
				<h3>BLayout(const BString&amp; name, BWidget* host, PartFlag part);</h3>
				<p>构造一个空的布局器，name指定其名称，host指定依附控件，part指定放置的部位。</p>
			</div>
			<div id="~BLayout()">
				<h3>~BLayout();</h3>
				<p>析构一个布局器。</p>
			</div>
			<div id="setEnabled(bool)">
				<h3>virtual bool setEnabled(bool enabled) override;</h3>
				<p>重写是否启用方法，不启用的控件会使用其包含的控件呈现无效样式，但仍然会进行布局。</p>
			</div>
			<div id="fresh()">
				<h3>void fresh() const;</h3>
				<p>刷新布局器的依附控件。</p>
			</div>
			<div id="dirty()">
				<h3>void dirty();</h3>
				<p>将布局器标记为需要调整的状态，以使此布局器和父布局器进行重新调整。</p>
			</div>
			<div id="host()">
				<h3>BWidget* host();</h3>
				<p>取得此布局器的依附控件。</p>
			</div>
			<div id="host()">
				<h3>const BWidget* host() const;</h3>
			</div>
			<div id="parent()">
				<h3>BLayout* parent();</h3>
				<p>取得此布局器的父布局器。</p>
			</div>
			<div id="parent()">
				<h3>const BLayout* parent() const;</h3>
			</div>
			<div id="setPart(PartFlag)">
				<h3>void setPart(PartFlag part);</h3>
				<p>设置布局器依附于控件的哪个部位，当part为Part_None时，此布局器将不受依附控件的尺寸变化影响。</p>
			</div>
			<div id="part()">
				<h3>PartFlag part() const;</h3>
				<p>获得布局器的放置部位。</p>
			</div>
			<div id="setVisible(bool)">
				<h3>void setVisible(bool visible);</h3>
				<p>设置布局器是否显示，当布局器隐藏时所有子控件都将被隐藏。</p>
			</div>
			<div id="visible()">
				<h3>bool visible() const;</h3>
				<p>获得而已器是否显示。</p>
			</div>
			<div id="style()">
				<h3>BStyle* style() const;</h3>
				<p>获取布局器的样式表。</p>
			</div>
			<div id="setMargin(int, int, int, int)">
				<h3>void setMargin(int left, int top, int right, int bottom);</h3>
				<p>设置布局器的四边边距，同于setMargin(BMargin(left, top, right, bottom)。</p>
			</div>
			<div id="setMargin(const BMargin&)">
				<h3>void setMargin(const BMargin&amp; margin);</h3>
				<p>设置布局器的四边边距。</p>
			</div>
			<div id="margin()">
				<h3>const BMargin&amp; margin() const;</h3>
				<p>获取布局器的四边边距。</p>
			</div>
			<div id="setMargin(Part, int)">
				<h3>void setMargin(Part part, int value);</h3>
				<p>设置布局器的边距值，part指定要修改的部位，value为设置的边距值。</p>
			</div>
			<div id="margin(Part)">
				<h3>int margin(Part part) const;</h3>
				<p>获取指定的位置的边距，可选的部位为上，下，左，右四个方位。</p>
			</div>
			<div id="setWidthPolicy(Policy)">
				<h3>void setWidthPolicy(Policy widthPolicy);</h3>
				<p>设置宽度调整策略。</p>
			</div>
			<div id="widthPolicy()">
				<h3>Policy widthPolicy() const;</h3>
				<p>获得宽度调整策略。</p>
			</div>
			<div id="setHeightPolicy(Policy)">
				<h3>void setHeightPolicy(Policy heightPolicy);</h3>
				<p>设置高度调整策略。</p>
			</div>
			<div id="heightPolicy()">
				<h3>Policy heightPolicy() const;</h3>
				<p>获得高度调整策略。</p>
			</div>
			<div id="setSizePolicy(Policy, Policy)">
				<h3>void setSizePolicy(Policy widthPolicy, Policy heightPolicy);</h3>
				<p>设置宽度和高度的调整策略。同于setSizePolicy(BSizePolicy(widthPolicy, heightPolicy))。</p>
			</div>
			<div id="setSizePolicy(const BSizePolicy&)">
				<h3>void setSizePolicy(const BSizePolicy&amp; sizePolicy);</h3>
				<p>设置宽度和高度的调整策略。</p>
			</div>
			<div id="sizePolicy()">
				<h3>virtual BSizePolicy sizePolicy() const;</h3>
				<p>获得宽度和高度的调整策略。</p>
			</div>
			<div id="setFixedSize(int, int)">
				<h3>void setFixedSize(int fixedWidth, int fixedHeight);</h3>
				<p>设置固定尺寸值，当调整策略包含Policy_Fixed时使用此尺寸值。同于setFixedSize(BSize(fixedWidth, fixedHeight))。</p>
			</div>
			<div id="setFixedSize(const BSize&)">
				<h3>void setFixedSize(const BSize&amp; fixedSize);</h3>
				<p>设置固定尺寸值，当调整策略包含Policy_Fixed时使用此尺寸值。</p>
			</div>
			<div id="fixedSize()">
				<h3>virtual BSize fixedSize() const;</h3>
				<p>获得固定尺寸值。</p>
			</div>
			<div id="setMinSize(int, int)">
				<h3>void setMinSize(int minWidth, int minHeight);</h3>
				<p>设置最小尺寸值，此值限制布局器尺寸不小于指定值。同于setMinSize(BSize(minWidth, minHeight))。</p>
			</div>
			<div id="setMinSize(const BSize&)">
				<h3>void setMinSize(const BSize&amp; minSize);</h3>
				<p>设置最小尺寸值，此值限制布局器尺寸不小于指定值。</p>
			</div>
			<div id="minSize()">
				<h3>virtual BSize minSize() const;</h3>
				<p>获得最小尺寸值。</p>
			</div>
			<div id="setMinWidth(int)">
				<h3>void setMinWidth(int minWidth);</h3>
				<p>单独设置最小宽度值。</p>
			</div>
			<div id="minWidth()">
				<h3>int minWidth() const;</h3>
				<p>获得最小宽度值。</p>
			</div>
			<div id="setMinHeight(int)">
				<h3>void setMinHeight(int minHeight);</h3>
				<p>单独设置最大宽度值。</p>
			</div>
			<div id="minHeight()">
				<h3>int minHeight() const;</h3>
				<p>获得最小高度值。</p>
			</div>
			<div id="setMaxSize(int, int)">
				<h3>void setMaxSize(int maxWidth, int maxHeight);</h3>
				<p>设置最大尺寸值，此值限制布局器尺寸不大于指定值。同于setMaxSize(BSizie(maxWidth, maxHeight))。</p>
			</div>
			<div id="setMaxSize(const BSize&)">
				<h3>void setMaxSize(const BSize&amp; maxSize);</h3>
				<p>设置最大尺寸值，此值限制布局器尺寸不大于指定值。</p>
			</div>
			<div id="maxSize()">
				<h3>virtual BSize maxSize() const;</h3>
				<p>获得最大尺寸限制值。</p>
			</div>
			<div id="setMaxWidth(int)">
				<h3>void setMaxWidth(int maxWidth);</h3>
				<p>单独设置最大宽度限制值。</p>
			</div>
			<div id="maxWidth()">
				<h3>int maxWidth() const;</h3>
				<p>获得最大宽度限制值。</p>
			</div>
			<div id="setMaxHeight(int)">
				<h3>void setMaxHeight(int maxHeight);</h3>
				<p>单独设置最大高度限制值。</p>
			</div>
			<div id="maxHeight()">
				<h3>int maxHeight() const;</h3>
				<p>获得最大高度限制值。</p>
			</div>
			<div id="preferSize()">
				<h3>BSize preferSize() const;</h3>
				<p>计算合适的尺寸。</p>
			</div>
			<div id="setRect(int, int, int, int)">
				<h3>void setRect(int x, int y, int width, int height);</h3>
				<p>设置布局器的矩形区域。同于setRect(BRect(x, y, width, height))。</p>
			</div>
			<div id="setRect(const BPoint&, const BSize&)">
				<h3>void setRect(const BPoint&amp; pos, const BSize&amp; size);</h3>
				<p>设置布局器的矩形区域。同于setRect(BRect(pos, size))。</p>
			</div>
			<div id="setRect(const BRect&)">
				<h3>void setRect(const BRect&amp; rect);</h3>
				<p>设置布局器的矩形区域。</p>
			</div>
			<div id="rect()">
				<h3>const BRect&amp; rect() const;</h3>
				<p>获得布局器的矩形区域。</p>
			</div>
			<div id="rect(Part)">
				<h3>BRect rect(Part part) const;</h3>
				<p>获得布局器的各个部位的矩形区域，其九个部位。</p>
			</div>
			<div id="setAlign(Align)">
				<h3>bool setAlign(Align align);</h3>
				<p>设置子元素的对齐方式，当实际尺寸小于可用尺寸时，使用此对齐方式进行调整。</p>
			</div>
			<div id="align()">
				<h3>Align align() const;</h3>
				<p>获得唯一元素的对齐方式。</p>
			</div>
			<div id="setWidget(BWidget*,Align)">
				<h3>bool setWidget(BWidget* widget, Align align = Align_None);</h3>
				<p>设置唯一的子元素为指定的控件，align指定其对齐方式。已经包含的其它子元素都将被移除。</p>
			</div>
			<div id="widget()">
				<h3>const BWidget* widget() const;</h3>
				<p>获得唯一的控件子元素。</p>
			</div>
			<div id="widget()">
				<h3>BWidget* widget();</h3>
			</div>
			<div id="setLayout(BLayout*,Align)">
				<h3>bool setLayout(BLayout* layout, Align align = Align_None);</h3>
				<p>设置唯一的子元素为指定的布局器，align指定其对齐方式。已经包含的其它子元素都将被移除。</p>
			</div>
			<div id="layout()">
				<h3>const BLayout* layout() const;</h3>
				<p>获得唯一的布局器子元素。</p>
			</div>
			<div id="layout()">
				<h3>BLayout* layout();</h3>
			</div>
			<div id="setSpacer(BSpacer*,Align)">
				<h3>bool setSpacer(BSpacer* spacer, Align align = Align_None);</h3>
				<p>设置唯一的子元素为指定的空间件，align指定其对齐方式。已经包含的其它子元素都将被移除。</p>
			</div>
			<div id="spacer()">
				<h3>const BSpacer* spacer() const;</h3>
				<p>获得唯一的空间件子元素。</p>
			</div>
			<div id="spacer()">
				<h3>BSpacer* spacer();</h3>
			</div>
			<div id="dirty(const BObject*)">
				<h3>virtual bool dirty(const BObject* object);</h3>
				<p>标记指定对象的元素为需要调整的，后面更新时会重新调整。</p>
			</div>
			<div id="align(const BObject*)">
				<h3>virtual Align align(const BObject* object) const;</h3>
				<p>获得指定对象的元素的对齐方式。</p>
			</div>
			<div id="area(const BObject*)">
				<h3>virtual const BRect&amp; area(const BObject* object) const;</h3>
				<p>获得指定对象所在的元素被赋予的区域， 这些区域有时不被全部使用。</p>
			</div>
			<div id="count()">
				<h3>virtual int count() const;</h3>
				<p>获得布局器中元素的个数，此类中最多只会有一个元素。</p>
			</div>
			<div id="object(int)">
				<h3>virtual BObject* object(int index) const;</h3>
				<p>获得第index个子元素中的对象。</p>
			</div>
			<div id="widget(int)">
				<h3>virtual BWidget* widget(int index) const;</h3>
				<p>获得第index个子元素中的控件。</p>
			</div>
			<div id="layout(int)">
				<h3>virtual BLayout* layout(int index) const;</h3>
				<p>获得第index个子元素中的布局器。</p>
			</div>
			<div id="spacer(int)">
				<h3>virtual BSpacer* spacer(int index) const;</h3>
				<p>获得第index个子元素中的空间件。</p>
			</div>
			<div id="spring(int)">
				<h3>virtual BSpring* spring(int index) const;</h3>
				<p>获得第index个子元素中的弹簧。</p>
			</div>
			<div id="find(const BString&)">
				<h3>virtual BObject* find(const BString&amp; name) const;</h3>
				<p>寻找指定名称的子元素对象，此方法也会在子布局器寻找。</p>
			</div>
			<div id="findWidget(const BString&)">
				<h3>virtual BWidget* findWidget(const BString&amp; name) const;</h3>
				<p>寻找指定名称的控件子元素，此方法也会在子布局器寻找。</p>
			</div>
			<div id="findLayout(const BString&)">
				<h3>virtual BLayout* findLayout(const BString&amp; name) const;</h3>
				<p>寻找指定名称的布局器子元素，此方法也会在子布局器寻找。</p>
			</div>
			<div id="findSpacer(const BString&)">
				<h3>virtual BSpacer* findSpacer(const BString&amp; name) const;</h3>
				<p>寻找指定名称的空间件子元素，此方法也会在子布局器寻找。</p>
			</div>
			<div id="findSpring(const BString&)">
				<h3>virtual BSpring* findSpring(const BString&amp; name) const;</h3>
				<p>寻找指定名称的弹簧子元素，此方法也会在子布局器寻找。</p>
			</div>
			<div id="contain(const BObject*)">
				<h3>bool contain(const BObject* object) const;</h3>
				<p>判断此布局器是否包含指定的对象。</p>
			</div>
			<div id="contain(const BWidget*)">
				<h3>virtual bool contain(const BWidget* widget) const;</h3>
				<p>判断此布局器是否包含指定的控件。</p>
			</div>
			<div id="contain(const BLayout*)">
				<h3>virtual bool contain(const BLayout* layout) const;</h3>
				<p>判断此布局器是否包含指定的布局器。</p>
			</div>
			<div id="contain(const BSpacer*)">
				<h3>virtual bool contain(const BSpacer* spacer) const;</h3>
				<p>判断此布局器是否包含指定的空间件。</p>
			</div>
			<div id="contain(const BSpring*)">
				<h3>virtual bool contain(const BSpring* spring) const;</h3>
				<p>判断此布局器是否包含指定的弹簧。</p>
			</div>
			<div id="remove(BObject*)">
				<h3>bool remove(BObject* object);</h3>
				<p>移除指定的子元素对象。</p>
			</div>
			<div id="remove(BWidget*)">
				<h3>virtual bool remove(BWidget* widget);</h3>
				<p>移除指定的控件子元素。</p>
			</div>
			<div id="remove(BLayout*)">
				<h3>virtual bool remove(BLayout* layout);</h3>
				<p>移除指定的布局器子元素。</p>
			</div>
			<div id="remove(BSpacer*)">
				<h3>virtual bool remove(BSpacer* spacer);</h3>
				<p>移除指定的空间件子元素。</p>
			</div>
			<div id="remove(BSpring*)">
				<h3>virtual bool remove(BSpring* spring);</h3>
				<p>移除指定的弹簧子元素。</p>
			</div>
			<div id="clear()">
				<h3>virtual bool clear();</h3>
				<p>移除所有子元素对象。</p>
			</div>
			<div id="baseSize()">
				<h3>virtual BSize baseSize() const;</h3>
			</div>
			<div id="sizeHint()">
				<h3>virtual BSize sizeHint() const;</h3>
				<p>计算合适的尺寸值。</p>
			</div>
			<div id="adjust()">
				<h3>virtual bool adjust();</h3>
				<p>进行布局调整。</p>
			</div>
			<div id="attached(BWidget*)">
				<h3>virtual void attached(BWidget* host);</h3>
				<p>附着事件。此事件在布局器被放进控件时产生。</p>
			</div>
			<div id="detached(BWidget*)">
				<h3>virtual void detached(BWidget* host);</h3>
				<p>脱离事件，此事件发生在布局器被移出依附控件时。</p>
			</div>
			<div id="event(const BEvent&)">
				<h3>virtual void event(const BEvent&amp; event);</h3>
				<p>事件分发。</p>
			</div>
			<div id="styleEvent(const BEvent&)">
				<h3>virtual void styleEvent(const BEvent&amp; event);</h3>
				<p>样式表取值：</p><table>
					<tr><td>Value_Margin_Left</td><td>取值为左边距，值为：int left。</td></tr>
					<tr><td>Value_Margin_Top</td><td>取值为上边距，值为：int top。</td></tr>
					<tr><td>Value_Margin_Right</td><td>取值为右边距，值为：int right。</td></tr>
					<tr><td>Value_Margin_Bottom</td><td>取值为下边距，值为：int bottom。</td></tr>
					<tr><td>Value_WidthPolicy</td><td>取值为宽度的调整策略，值为：Policy widthPolicy。</td></tr>
					<tr><td>Value_HeightPolicy</td><td>取值为高度的调整策略，值为：Policy heightPolicy。</td></tr></table>
			</div>
			<div id="freshEvent(const BEvent&)">
				<h3>virtual void freshEvent(const BEvent&amp; event);</h3>
			</div>
			<div id="paintEvent(const BEvent&)">
				<h3>virtual void paintEvent(const BEvent&amp; event);</h3>
			</div>
			<div id="mouseEnterEvent(const BMouseEvent&)">
				<h3>virtual void mouseEnterEvent(const BMouseEvent&amp; mouseEvent);</h3>
			</div>
			<div id="mouseLeaveEvent(const BMouseEvent&)">
				<h3>virtual void mouseLeaveEvent(const BMouseEvent&amp; mouseEvent);</h3>
			</div>
			<div id="mousePressEvent(const BMouseEvent&)">
				<h3>virtual void mousePressEvent(const BMouseEvent&amp; mouseEvent);</h3>
			</div>
			<div id="mouseReleaseEvent(const BMouseEvent&)">
				<h3>virtual void mouseReleaseEvent(const BMouseEvent&amp; mouseEvent);</h3>
			</div>
			<div id="mouseMoveEvent(const BMouseEvent&)">
				<h3>virtual void mouseMoveEvent(const BMouseEvent&amp; mouseEvent);</h3>
			</div>
		</div>
	</body>
</html>